import Vue from 'vue'
import Vuex from 'vuex'
import { apigetUserInfo } from '@/api'
import Router from '../router'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    userInfo: {}
  },
  mutations: {
    CHANGE_USER_INFO(state, data) {
      state.userInfo = data
    }
  },
  actions: {
    // context:vuex实例方法  data：通过dispacth触发action时传的参数
    getUserInfo(context, data) {
      // 获取用户信息
      apigetUserInfo().then(res => {
        // 如果成功 将用户信息保存到vuex中
        context.commit('CHANGE_USER_INFO', res.data)
      }).catch(err => {
        // 如果获取用户信息异常
        Router.push('/login')

      })
    }
  },
  modules: {
  }
})
